<?php namespace Admin\Model;

use Hdphp\Model\Model;

class ShopAttr extends Model{

	//数据表
	protected $table = "shop_attr";

	//完整表名
	protected $full = false;

	//自动验证
	protected $validate=array(
		//字段名: 表单字段名
		//验证方法: 函数或模型方法
		//验证条件: 1有字段时验证(默认)	2值不为空时验证  	3必须验证 
		//验证时间: 1 插入时验证		2更新时空时验证 	3全部情况验证 (默认)
		//array('字段名','验证方法','提示信息',验证条件,验证时间),
		array('arrt_name','require','属性名称不能为空',3,3),
		array('arrt_type','require','属性类型不能为空',3,3),
		array('show_type','require','显示类型不能为空',3,3),
	);

	//自动完成
	protected $auto=array(
		//字段名: 表单字段名
		//处理方法: 函数或模型方法
		//方法类型: string(字符串 默认)  function(函数)  method(模型方法)
		//验证条件: 1有字段时处理(默认)	2值不为空时 3必须处理
		//处理时间: 1 插入时  2更新时 3全部情况 (默认)
		//array('字段名','处理方法','方法类型',验证条件,验证时间),
		array('attr_value','getAttrValue','method',3,3),
	);
	
	//列表选项值自动完成  当类型不是下拉列表时，将值设置空
	public function getAttrValue($value)
	{
		return $_POST['show_type']==2?$value:'';
	}
	
	
	//获得所有属性
	public function getAll($shop_type_id)
	{
		$data =  $this->where('shop_type_id',$shop_type_id)->get();
		foreach ((array)$data as $m => $n) {
			$data[$m] = Arr::int_to_string($n,array('attr_type'=>array(1=>'属性',2=>'规格')));
		}
//		p($data);die;
		return $data;
	}
	
	//添加属性
	public function store()
	{
		if($this->create()){
			return $this->add();
		}
	}
	
	//修改商品属性
	public function edit()
	{
		if($this->create()){
			return $this->save();
		}
	}
	
	//获得一条商品属性数据
	public function one($id)
	{
		return $this->find($id);
	}
	
}


